#ifndef __CryScaleformGFx_H__
#define __CryScaleformGFx_H__

#include "IScaleformGfx.h"

class CScaleformGFx
	: public IScaleformGFx
{
public:
	CScaleformGFx() {};
	~CScaleformGFx() {};

	VIRTUAL bool IsScaleformSupported() const;
	VIRTUAL void Release();
	VIRTUAL IFlashPlayer* CreateFlashPlayerInstance() const;
	VIRTUAL IFlashPlayerBootStrapper* CreateFlashPlayerBootStrapper() const;
	VIRTUAL void RenderFlashInfo();
	VIRTUAL void GetFlashMemoryUsage(ICrySizer* pSizer);
	VIRTUAL void SetFlashLoadMovieHandler(IFlashLoadMovieHandler* pHandler) const;
	VIRTUAL void GetFlashProfileResults(float& accumTime, bool /*reset*/) const;
	VIRTUAL void GetFlashRenderStats(unsigned & numDPs, unsigned int& numTris);
	VIRTUAL void SetThreadIDs(uint32 mainThreadID, uint32 renderThreadID);
	VIRTUAL void AmpEnable(bool bEnable);
	VIRTUAL void AmpAdvanceFrame();
	VIRTUAL void ResetFlashMeshCache() const;
};

#endif // ifndef __CryScaleformGFx_H__